The present invention relates to detection of defects, especially for detection of defects on the surface of semiconductor devices.
Current demands for high density and performance associated with ultra large scale integration require submicron features, increased transistor and circuit speeds and improved reliability. Such demands require formation of device features with high precision and uniformity, which in turn necessitates careful process monitoring, including frequent and detailed inspections of the devices while they are still in the form of semiconductor wafers.
Conventional in-process monitoring techniques employ a two phase xe2x80x9cinspection and reviewxe2x80x9d procedure. During the first phase the surface of the wafer is inspected at high-speed and relatively low-resolution. The purpose of the first phase is to produce a defect map showing suspected locations on the wafer having a high probability of a defect. During the second phase the suspected locations are more thoroughly analyses. Both phases may be implemented by the same device, but this is not necessary.
The two phase inspection tool may have a single detector or multiple detectors. A multiple detector two phase inspection device is described in U.S. Pat. Nos. 5,699,447, 5,982,921 and 6,178,257B1 of Alumot (hereinafter collectively referred to as the Alumot system) whose contents are hereby incorporated herein by reference.
During the first phase (also referred to as the inspection phase) the Alumot system (a) obtains an inspected pixel, neighboring inspected pixels and a reference pixel, (b) determines the type of the inspected pixel and/or determined the reference pixel type, (c) compares between the inspected pixel and the reference pixel and a threshold that depends upon the inspected pixel type, (d) and determines a presence of a defect in response to said comparison. The step of determining the type of a pixel involves a first stage of determining the following parameters: (i) local maximaxe2x80x94whether the pixel is a local maxima (if the pixel is a maximum relative to his neighbors), (ii) intensityxe2x80x94if the pixel is intense (if the intensity of the pixel is significant relative to a threshold), (iii) ratioxe2x80x94what is the ratio between the intensity of a pixel and the intensity of its neighbors relative to a threshold) and (iv) gradientxe2x80x94whether the pixel is located in a slope area relative to a threshold. The second stage involves classifying the pixel to one of the following types, in response to the parameters: (I) isolated peak (if the pixel is a local maxima with significant intensity and ratio), (II) multipeak (if the pixel is not an isolated peak, it has significant intensity and none of its neighbors is an isolated peak), (III) slopexe2x80x94if either one of the pixel""s neighbors is an isolated peak or has significant gradient, or (IV) backgroundxe2x80x94if the pixel has no significant intensity or gradient and none of its neighbors is an isolated peak.
Accordingly, the defect detection is responsive to the typing of the inspected pixel as the thresholds are responsive to the type of the pixel. Various errors in the measurement process, especially in noisy environment, and/or measurement inaccuracies may effect the type determination and may result in erroneous defect detections. Furthermore, the set of a pixel""s types are fixed. Thus the types cannot be dynamically adjusted or tailored according to an end-user requirement.
The reference pixel is usually obtained from a previous inspection of another die, either from the same wafer or not. A comparison between pixels that were obtained from different dies, especially when the inspection tool parameters could change, may also result in erroneous determinations.
There exists a need for an improved and more robust method for inspecting a substrate, and especially a semiconductor substrate, for defects.
There exists a further need for a method for inspecting a substrate that allows a dynamic definition of pixel types.
The invention provides a method for inspecting a substrate for defects, the method includes the steps of: (a) obtaining an inspected pixel and a reference pixel; (b) calculating an inspected value and a reference value, the inspected value representative of the inspected pixel and the reference value representative of the reference pixel; (c) selecting a threshold in response to a selected value out of the inspected value and the reference value; and (d) determining a relationship between the selected threshold, the reference value and the inspected value to indicate a presence of a defect. The relationship may reflect a displacement between a pair of inspected pixel and reference pixel to the threshold. Step (d) may also include comparing between the selected threshold and a difference between the inspected value and the reference value. Ideally, at the absence of a defect, the inspected pixel and the reference pixel are equal.
The invention provides a method for inspecting a substrate for defects, the method including the steps of: (a) obtaining an inspected pixel; (b) calculating an inspected value representative of the inspected pixel; (c1) determining whether to obtain a reference pixel from a same die of the inspected pixel or from a reference pixel from another die; (c2) obtaining a reference pixel in response to the determination; (c3) calculating an inspected value representative of the inspected pixel; (d) selecting a threshold in response to a selected value out of the inspected value and the reference value; and (e) comparing the selected threshold to a difference between the reference value and the inspected value to determine the presence of a defect. Steps (a)-(b) allow for determining whether the reference pixel may be obtained from the same die. Obtaining a reference pixel from the same die as the inspected pixel and utilizing the same inspection tool and especially during the same inspection may compensate for changes in the working environment, for measurement inaccuracies and the like. It is also noted that obtaining the reference pixel from the same die may simplify the process of obtaining the reference pixel, as the reference pixel may be obtained during the same scan of the measurement unit. Usually a reference pixel may be obtained from the same die, or even from the vicinity of the inspected pixel if the inspected pixel is located in a background area. Changes of gray levels at neighboring pixels within a background area usually indicate a defect.
The step of selecting a value out of the inspected value and the reference value can be responsive to an evaluation of the noise associated with each of the inspected and reference values such to select the value that is less noisy. In many cases the less noisy value is the lower value. The selection may involve evaluating a first probability that the inspected value is erroneous and evaluating a second probability that the reference value is erroneous and selecting the value that is associated with a lower probability out of the first and second probabilities.
The inspected value is representative of the inspected pixel and/or neighboring inspected pixels. The reference value is representative of the reference pixel and/or neighboring reference pixels. The inspected value may represent a comparison between the inspected pixel and neighboring inspected pixels. The reference value may represent a comparison between reference pixel and neighboring reference pixels.
The inspected value can represent at least one of the following parameters: a gray level of the inspected pixel; a ratio between the gray level of the inspected pixel and between a combination of gray levels of at least one inspected neighboring pixel; a difference between the gray level of the inspected pixel and a combination of gray levels of at least one inspected neighboring pixel. The inspected value can reflect a difference between a maximal gray level of a neighboring inspected pixel and a minimal gray level of a neighboring inspected pixel. The inspected value can also reflect an average of gray levels of neighboring inspected pixels or even an average between gray levels of neighboring inspected pixels and the gray level of the inspected pixel.
The reference value can represent at least one of the following parameters: a gray level of the reference pixel; a ratio between the gray level of the reference pixel and between a combination of gray levels of at least one reference neighboring pixel; a difference between the gray level of the reference pixel and a combination of gray levels of at least one reference neighboring pixel. The reference value can reflect a difference between a maximal gray level of a neighboring reference pixel and a minimal gray level of a neighboring reference pixel. The reference value can also reflect an average of gray levels of neighboring reference pixels or even an average between gray levels of neighboring reference pixels and the gray level of the reference pixel.
According to an aspect of the invention the selected value is utilized for determining a reference pixel and inspected pixel type. It is noted that the selection of a single type for both pixels allows to overcome noise, measurement inaccuracies, and measurement mismatch, especially as the selection can be based upon the less noisy value, a value that is considered to be less erroneous.
The invention provides a method that includes a step of building a pixel type database reflecting the commonality of distinct values of a selected value. The database can be in the from of a histogram, but this is no necessary. Usually the method further includes an allocation of selected value ranges to pixel types. Conveniently, adjacent selected value ranges are delimited at local minima of a commonality graph representative of the relationship between a selected value and its commonality. The location of inter-type boarders at local minima of the histogram minimizes the amount of erroneous type classification resulting from noisy measurements and from measurement inaccuracies.
The allocation of value ranges can also be responsive to a minimal amount of data points within each value range. The amount of data points may be reflected by local maxima or even local maxima that are above a predefined threshold, to assure that each range includes significant amount of data points.
The allocation of value ranges can be responsive to inputs provided by an end-user, thus allowing for tailoring the method to end-users requirements.
Usually, the allocation is responsive to various types of areas on the die, these areas include patterned areas of a die, and background of a die. These area can also include periodic cells (also referred to as memory cells), non-periodic cells (also referred to logic cells) and background, accordingly.
According to an aspect of the invention, the database can be dynamically updated during the execution of the method, thus allowing adjustments to current information. The update can be done whenever the method is performed but it can also be made only if a defect was not detected.
According to an aspect of the invention the method includes a step of building a reference inspected database reflecting the communality of a pair of inspected value and reference value. At least one threshold can be determined in view of the reference inspected database. These databases can be represented as histograms.
According to yet another aspect of the invention, the invention involves building, for each pixel type, a reference inspected type database reflecting the communality of a pair of inspected value and reference value of pixels that belong to that pixel type. Each pixel type is associated with a threshold. The threshold is determined in view of the reference inspected type database. Conveniently, the step of selecting a threshold out of a set of thresholds comprises selecting a threshold that is associated with a pixel type of the selected pixel out of the inspected pixel and the reference pixel.
The reference inspected type database is an N-dimensional histogram, N being an integer that exceeds one. The threshold can be a line that is tangent to the histogram envelope, a line that is substantially parallel to the mean of data points that form the histogram, a line that is located at a predetermined distance from the histograms envelope, or a line that reflects data points that are located within a predefined statistical parameter from the mean of data points that form the histogram.
The reference pixel may be obtained from memory, from another die or from a pattern that is ideally identical to a pattern from which the inspected pixel is obtained.
The invention provides a method wherein the step of determining a relationship between the selected threshold, the reference value and the inspected value to indicate a presence of a defect includes providing an alarm signal indicative of a probability of a presence of a defect. Conveniently, a value of the alarm signal is responsive to a distance between the selected threshold and the pair of inspected value and reference value. The invention provides a method for inspecting a substrate for defects, the method includes the steps of: (i) obtaining an inspected pixel, inspected neighboring pixels and a reference pixel; (ii) calculating an inspected value, a second inspected value and a reference value, the second inspected value representative of the inspected pixel alone, the reference value representative of the reference pixel and neighboring reference pixels and the inspected value representative of the inspected pixel and inspected neighboring pixels; (iii) selecting a first threshold and a second threshold in response to a selected value out of the inspected value and the reference value; (iv) determining a first relationship between the selected first threshold, the inspected value and the second inspected value, determining a second relationship between the selected second threshold, the inspected value and the reference value; and (v) indicating a presence of a defect in response to at least one of the first relationship and the second relationship.
The first relationship can reflect a distance between the selected first threshold and a data element reflecting both the inspected value and the second inspected value. The second relationship reflects a distance between the selected second threshold and a data element reflecting both the inspected value and the reference value. The step of indicating including selecting a selected relationship out of the first relationship and the second relationship. Each relationship may reflect a probability of a presence of a defect; and wherein selecting the relationship that reflects a higher probability of a presence of a defect.
The second inspected value reflects a brightness of the inspected pixel. The method can further include a step of building a reference inspected database reflecting the communality of a pair of inspected value and reference value, and building an inspected neighborhood database reflecting the communality of pair of inspected value and neighboring inspected value. The method can include a step of defining a set of first thresholds in response to the reference inspected database, and a step of defining a set of second thresholds in response to the inspected neighborhood database.
The method can further include a step of building, for each pixel type, a neighborhood inspected type database reflecting the communality of a pair of inspected value and reference value of pixels that belong to that pixel type. The method can also include a step of determining a second threshold for each pixel type in response to the neighborhood inspected type database associated with said pixel type. The step of selecting a second threshold out of a set of second thresholds includes selecting a second threshold that is associated with a pixel type of the selected pixel out of the inspected pixel and the reference pixel. The second threshold can include (a) a line that is tangent to the histogram envelope, (b) a line that is substantially parallel to the mean of data points that form the histogram, (c) a line that is located at a predetermined distance from the histograms envelope, or (d) a line that reflects data points that are located within a predefined statistical parameter from the mean of data points that form the histogram.
Additional advantages of the present invention will become readily apparent to those skilled in this art from the following detailed description, wherein only the preferred embodiment of the present invention is shown and described, simply by way of illustration of the best mode contemplated for carrying out the present invention. As will be realized, the present invention is capable of other and different embodiments, and its several details are capable of modifications in various obvious respects, all without departing from the invention. Accordingly, the drawings and description are to be regarded as illustrative in nature, and not as restrictive.